System and method for proximity area networking for selection of messaging

ABSTRACT

Embodiments of the present invention include improved communication system and methods. In one embodiment, the present invention includes a wireless communication method comprising, on a first wireless device, receiving one or more wireless device identifications associated with one or more other wireless devices, and transmitting at least one of the one or more wireless device identifications from the first wireless device to a remote computer system, and on the remote computer system, receiving the at least one wireless device identification, and accessing information associated with the at least one wireless device identification. Embodiments of the present invention may be used for electronic dating, social networking and other communication applications.

RELATED APPLICATIONS

This application is a continuation of, and claims priority fromco-pending U.S. patent application Ser. No. 12/395,174, filed Feb. 27,2009, entitled “System and Method for Communication Between PreviouslyKnown and Unknown Users”, which is a continuation of U.S. patentapplication Ser. No. 11/055,310, entitled “System And Method ForWireless Communications Between Previously Known And Unknown Users,”filed Feb. 10, 2005, which claims priority under 35 U.S.C. §120 and 37C.F.R. §1.78; and is further related to and claims priority from U.S.Provisional Application No. 60/544,209 filed Feb. 11, 2004, entitled“Method And Apparatus For Wirelessly Communicating And Messaging BetweenPreviously Known And Unknown Parties,” and is also related to and claimspriority from U.S. Provisional Application No. 60/549,484 filed Mar. 1,2004, entitled “Method And Apparatus For Wirelessly Communicating AndMessaging Between Previously Known And Unknown Parties,” and is alsorelated to and claims priority from U.S. Provisional Application No.60/550,262 filed Mar. 3, 2004, entitled “Method And Apparatus ForWirelessly Communicating And Messaging Between Previously Known AndUnknown Parties,” the benefit of the earlier filing date of all of whichis claimed under 35 U.S.C. §119(e), and the disclosures of all are eachhereby incorporated herein by reference in their entirety.

BACKGROUND

The present invention relates to wireless communication, and inparticular, to a wireless communication system and method that providesan exchange of information between wireless devices.

There currently exists a number of ways of obtaining information about apreviously unknown party before actually approaching or contacting them.For example, in the case where both parties are in the same physicallocation, an ideal method is through a mutual friend who may offer or bewilling to provide information to one party about the other. This mutualfriend may also act as a conduit, allowing the two parties tocommunicate without any knowledge of the other's identifyinginformation.

Methods for obtaining information about an unknown party also exist incases where the parties are not in the same physical location. Examplesof these methods have historically included classified and personalsadvertisements, and dating or matchmaking services. In addition, withthe advent of the Internet, two extremely efficient methods have emergedas ways of identifying and communicating with previously unknownparties; these two methods are known as on-line dating and socialnetworking.

On-line dating (a business currently dominated by companies such asmatch.com) is a networking service where members complete user profiles(typically, an anonymous summary of a person's background, likes,dislikes and other information) that are kept in a central database.Users can then employ various search criteria such as gender, geographiclocation or specific activities which they are interested inparticipating in to identify a subset of other users who they may beinterested in meeting. The user conducting the search can then browsethrough this subset of other users to view their pictures and individualprofiles in order to decide whether or not to contact them. If theychoose to contact another user, a message is sent by the service to thatspecific person.

FIG. 1 illustrates an existing communication system 100 that may be usedin an on-line dating application. System 100 includes a computer system140, such as a server, including an on-line dating web application 150and database 160. Computer system 140 is coupled to the Internet 130.Users of the system may access the on-line dating application 150 usingdesktop computers 110 and 120 that are connected to the Internet 130.Contemporary means of connecting and using such on-line datingapplications 160 are typically through wired connections and such usetypically occurs in the privacy of a user's home or in some otherprivate non-mobile venue. Desktop computers 110 and 120 include Internetbrowsers 111 and 121 for accessing web pages from web application 150.

FIG. 2 illustrates the process used in an existing on-line datingsystem. As shown at 101, profiles of users may be stored in database160. The profiles may include various forms of information about eachuser and may further include one or more electronic photos of the user.When a user accesses the website, he/she may enter profile searchcriteria into web browser 111 or 121 as shown at 102. The searchcriteria are then sent to web application 150 on server 140 where thesearch is executed. Users may search for a variety of characteristicsabout other users based on the profile information stored in thedatabase. In response to the search request, the server returns profilesmatching the search criteria.

Similarly, users of social-networking services (such as Friendster andLinkedIn) fill-out profile information that is stored in a centraldatabase. However, in the case of social networking services, theprofiles are associated with other users in the form of a“hub-and-spoke” system, where each user is linked to one or morethird-parties through another user with which they have a pre-existingrelationship (i.e., personal or business connections). As in the case ofon-line dating services, users can use various search criteria toidentify a subset of other users whom they may be interested in meeting.However, in the case of social networking systems, users are generallyallowed to contact or view the profiles of only those users with whomthey are connected to through this hub-and-spoke system who areseparated from them by less than a pre-defined number of connections.

Despite these differences, a key limitation of both on-line dating andsocial networking services is that both require a user to initiate asearch based on specific qualities or characteristics; it is only afterthey've identified and contacted a person will they actually have theopportunity to meet them in a real world situation. Similarly, in thecase where both parties are in the same physical location but do nothave any mutual friends who can provide them with information about theother, there is no effective way to identify what this information is.Currently, there is no efficient methodology for combining and extendingthe efficiencies of online-dating and social networking service to realworld situations where a person may quickly obtain information about aspecific individual that he or she may encounter but does not yet knowanything about.

Given this current limitation, it would clearly be advantageous todevelop a system whereby a user could access information about aspecific person in their general location in order to decide whetherpotential compatibilities (either business or personal) may existbetween them. In the same way, it would be useful if a system existedwhereby a user could identify mutual friends which they may have incommon with a person in their general location. At the same time, itwould be valuable to have a system whereby a user could initiatecommunications with this person by sending them a message (which mayinclude the sender's user profile) at some point after reviewing theirinformation. More generally, it would be advantageous to have a systemthat would allow communication of information corresponding to aperson's dynamically changing environment.

Thus, existing systems are not useful in dynamic situations where one ormore users want to wirelessly communicate information. Consequently,there is a need for improved communication system and methods.

SUMMARY

Embodiments of the present invention include improved communicationsystem and methods. In one embodiment, the present invention includes awireless communication method comprising, on a first wireless device,receiving in the first wireless device one or more wireless deviceidentifications associated with one or more other wireless devices, andtransmitting at least one of the one or more wireless deviceidentifications from the first wireless device to a remote computersystem, and on the remote computer system, receiving the at least onewireless device identification, and accessing information associatedwith the at least one wireless device identification. In one embodiment,the information is profile information.

In one embodiment, the method further comprises, on the first wirelessdevice, transmitting a wireless identification request. In anotherembodiment, the method further comprises transmitting the informationassociated with the at least one wireless device identification from theremote computer system to the first wireless device. In anotherembodiment, the method further comprises receiving the informationassociated with the at least one wireless device identification.

In another embodiment, the one or more wireless device identificationsare unique identifications. In yet another embodiment, the uniqueidentifications include a Bluetooth identification or an RFID.

In another embodiment, the first wireless device and the one or moreother wireless devices are coupled together using a first local wirelessprotocol, and the first wireless device and the remote computer arecoupled together over a second wireless network.

In one embodiment, at least one of the one or more other wirelessdevices is a wireless ID tag.

In another embodiment, the method further comprises sending a message.In one embodiment, the message is sent from the first wireless device toat least one of the one or more other wireless devices. In anotherembodiment, the message is sent from the first wireless device to theremote computer system. In one embodiment, the message is anadvertisement. In one embodiment, the remote computer system filters themessage based on the information associated with the at least onewireless device identification. In another embodiment, the methodfurther comprises transmitting a wireless device identification of thefirst wireless device to the remote computer system, wherein the remotecomputer system filters the message based on information associated withthe wireless device identification of the first wireless device.

In another embodiment, the present invention includes a communicationmethod comprising receiving in a first wireless device one or morewireless device identifications associated with one or more otherwireless devices, transmitting at least one of the one or more wirelessdevice identifications from the first wireless device to a remotecomputer system, and receiving information associated with the one ormore wireless device identifications from the remote computer system inthe first wireless device.

In one embodiment, the method further comprises transmitting anidentification request from the first wireless device.

In yet another embodiment, the present invention includes a computersystem coupled to a network, the computer system including software forperforming a method comprising storing a plurality of wireless deviceidentifications, storing information for a plurality of users,associating the wireless device identifications with the information,receiving one or more wireless device identifications from a wirelessdevice, accessing the information associated with the one or morewireless device identifications, and transmitting the informationassociated with the one or more wireless device identifications to thewireless device.

In one embodiment, the wireless device identifications and informationare stored in a database accessible over the Internet.

In another embodiment, accessing the information comprises generating aquery to a database using the one or more wireless deviceidentifications and retrieving information associated with the one ormore wireless device identifications in response to the query.

In yet another embodiment, the method further comprises receiving acorrespondence instruction from at least one wireless device, and inaccordance therewith, sending a message to at least one of the pluralityof users.

In yet another embodiment, the present invention includes a wirelessdevice comprising a power supply, an antenna, and an RF circuit coupledto the power supply for receiving power and coupled to the antenna forreceiving and transmitting data, wherein the RF circuitry includes adevice identification, and wherein the RF circuitry is isolated fromuser inputs and outputs. In one embodiment, the device receives anidentification request through the antenna, and in accordance therewith,transmits the device identification. In other embodiments, the device isembedded in a watch, a broach, a pendant, a necklace, a ring, anearring, an article of clothing, a clothing label, a wallet or akey-chain. In other embodiments, the device is integrated into acredit-card form-factor.

In one embodiment, the present invention allows a user to: 1) view theprofile of any other user in their immediate vicinity; 2) identifymutual friends, colleagues or associates who they may have in commonwith this other user; and 3) send a message to this user withoutnecessarily having any prior knowledge of the recipient's identifyinginformation, where the identifying information of the recipient mayremain hidden from the sender and is known only to the service itself.

In one embodiment, a communication process is initiated by a user (the“Sender” or “User A”, using “Device A”) interested in viewing theprofile of another user (the “Recipient” or “User B”, using “Device B”),identifying any mutual friends they may have in common or in sending amessage to them. To begin this process, Device A broadcasts a wirelessinquiry to neighboring devices, including Device B, requesting that theyprovide their unique identification numbers to Device A. Upon receipt ofthis inquiry, each device, including Device B broadcasts its unique IDback to Device A. The inquiry by Device A can be made in any number ofways including a directional electromagnetic or ultrasonic beam sentfrom Device A in the direction of Device B which queries an RFID tag orsimilar device, or through an omni-directional method or wirelessprotocol (such as any Bluetooth or any 802.11 standard) in which alldevices within a given distance are queried.

In one embodiment, response to the inquiry for an ID may be done via thesame wireless protocol as the inquiry. In one embodiment, the responseto the inquiry for an ID may be done or via a different wirelessprotocol as the inquiry. In addition, embodiments of the devices caninclude cases where the ID's are static, dynamic or pseudo-random.

Upon receipt of the unique ID of Device B (and of any other devices thatrespond to the inquiry for their ID), Device A may upload these IDs to acentral service which may include a website, a database and one or manyservers. The system will then match the IDs provided by Device A withthose of registered users and download the images of the usersassociated with the IDs back to Device A.

An alternate embodiment may include the case where the image is provideddirectly to Device A from Device B. Alternate embodiments may alsoinclude the exchange of IDs such that Device A sends a file containingits ID along with information regarding the message to be sent or theinformation requested directly to Device B. Embodiments of the inventionmay include cases where both devices exchange ID or other information(i.e. there is a reciprocal exchange of information). The informationsent between devices may or may not be encrypted.

Once Device A has received images of the neighboring users from theserver or through other means, User A can scroll through them touniquely select the person with whom they are attempting to communicateor whose profile they wish to view. Upon selection of this person,Device A may upload the request via the cellular network to the serverwhich will then download the associated profile of User B to Device A.At that point, User A can then review the profile of User B, create andsend a message or forward his own user profile to User B.

Embodiments of the invention may include pre-recorded or customizedmessages stored on Device A or stored on the server. Although thesemessages may be sent directly from Device A to Device B, these messagesmay also be delivered to User B by the server.

In one embodiment, the server may also provide a user with informationregarding “friends of friends”, essentially acting as a mobile“social-networking” service.

Alternate embodiments include the cases where: 1) Device A communicateswith the server via a cable, cradle or other physical connection to a PCor other electronic apparatus which can relay ID or other information tothe server; or 2) through any form of wireless connection such asBluetooth Wi-Fi or 802.11 which could relay the ID and messaginginformation either directly or through some intermediary (such as acellular network or PC) to the server. An additional alternateembodiment includes the case where Device A displays the IDs to User Aat some later time when User A can log-on or access the server andmanually enter the information.

Once the information regarding the identity of User A, the unique ID ofDevice B and the selection of which message to send (including eithertheir user-profile or a customized message) has been received by theserver, message delivery may be contingent on a number of pre-setconditions including whether User B has an interest in receivingmessages from someone with the profile of User A, the form of themessage, the number of messages User B is willing to receive in a givenday and other preferences designed to filter unwanted, repetitive,overwhelming or otherwise undesirable messages (i.e. spam) to avoidannoying, harassing or overloading the Recipient.

In the event that the server determines that the message or sender doesnot meet the preset conditions to be sent to the Recipient, the messagewill be discarded.

In the event that the server determines that the message or Sender doesmeet the preset conditions to be sent to the Recipient, the Recipientwill receive or be notified of the message which may then be deliveredto, or retrieved by the Recipient in any of a number of ways includinglogging on to the server, or through any other means as technicallyfeasible including via cell phones, PDA's or email. The recipient canchoose to be notified immediately upon receipt of such a message, on aperiodic basis or through a manual inquiry at the time of theirchoosing.

An additional embodiment of the present invention provides that theSender can specify whether they want their message delivered to theRecipient as quickly as possible, or on a delayed basis.

Upon receipt or retrieval of the message, the Recipient could choose toignore the message, to not be contacted by the Sender again or torespond to the message. The present invention provides that the users ofthe service can respond anonymously or pseudonymously to the Senderthrough the server or that they can directly respond to the Sender ifcontact information is made available.

The Devices (A and B) themselves can be of multiple forms including oneswith only the discrete functionality of the present invention, orintegrated into or with other devices such as cell-phones, PDA's ormusic players either through embedded hardware or as a softwareapplication. In addition, the devices can have the capability to act asboth Sender and Recipient (for users interested in sending and receivingmessages), to act only as a Sender (for users not interested inreceiving messages) or to act only as a Recipient (for users who areinterested in receiving messages). Additionally, particularly in thecase of a Recipient-only device, one embodiment of the present inventionprovides that the form-factor can be such that the device appears as apiece of jewelry such as a broach, pendant, ring, earring, or as aclothing label, a key-chain, integrated into a credit-card form-factor,integrated into clothing itself or as some other fashion statement whichcan be both aesthetically pleasing and alert others that a person is auser of the system.

In the case where messages are not sent directly between devices andprimarily ID information is exchanged, the invention provides numerousadvantages including lower power, lower-bandwidth requirements, reducedelectronics complexity and cost and leveraging of the existingcommunications infrastructure.

In another embodiment of the present invention, Device A automaticallyqueries other devices for their IDs, receives one or many responses toits request and communicates this information to the server, which thencompares the profiles associated with the IDs to the pre-definedpreferences of User A. If any of the profiles match these preferences,an alert is sent to User A to indicate the presence of aperson-of-interest. In a variation of this embodiment, User A can be abusiness or other organization (such as an advertiser) which may takesome additional action based on the presence of a person with a specificprofile. For example, a business or advertiser may retrieve profiles andforward information or advertisements to such user's accounts. User's ofthe service may opt to receive and optionally filter such information oradvertisements based on predefined criteria (i.e., restaurant ads only).

In another embodiment, a device may continuously or intermittentlybroadcast its ID and/or other information without having received aninquiry.

In another embodiment, the effective range of the present invention maybe extended beyond the range of the wireless protocol used to requestIDs from neighboring devices and the server can build a positionalrouting database to determine users who are likely to be reasonablyclose to other users, but beyond the range of direct detection. Uponrequest of Device A, the server may supplement direct responses withindirect responses that User A can select from. By correlating thislocation information, the server can create what is effectively anexpanded or “daisy-chained” network, dramatically increasing the utilityand range of the system. In one embodiment, individual users or theserver itself can set limitations such that users removed from directcontact beyond a certain number (e.g. more than twice removed) are notincluded in any query. Another embodiment of the present inventionincludes the general case where relative positions, ranges or distancesof mobile devices are established via direct or peer-to-peercommunications, uploaded to a central server via a cellular or othernetwork and used to facilitate communications or provide other data tobe used in any way whatsoever.

In yet another embodiment of the present invention, GPS informationrather than direct communications between devices is used to provideresponses to User A's request to initiate messaging or other actions.The response will be in the form of images or other identifiers of userswithin a specified range of User A. User A can then uniquely select theRecipient from these responses.

Embodiments of the present invention also include the general case whereinformation is exchanged or allowed to be exchanged between one or moremobile devices using the techniques described herein; specifically, whenthe identity of the users of these devices may or may not be known toeach other and communication of any form between devices is initiated bythe wireless exchange of one or more IDs that are uploaded to one ormore central servers which then enable, authorize or facilitateinformation to be conveyed between the devices either directly orthrough one or more central servers. An example of the use of thistechnique in such an embodiment would be in case of entertainment orother gaming applications operating on mobile devices when one playerdecides to initiate or play a game with another. In addition, suchapplications can be automatically enabled using this technique; forexample in the case where devices can automatically detect other userswithin their vicinity having specific skill levels or who may presentsome other challenge and automatically notify the user of that person'spresence.

An additional embodiment of the present invention includes the use ofthe service and/or hardware for the electronic commerce applicationsincluding micro-payments. Additional embodiments of the presentinvention also include medical applications where a user profile maycontain medical or other information that may be accessed by a doctor,pharmacist, emergency services technician or other health provider.

In another embodiment of the present invention includes software, whichcan be downloaded into an existing platform to enable it to practice thepresent invention and perform in the techniques described herein.

Embodiments of the present invention also include any and all businessmethods for generating revenue and income through the sales of hardware,software and services that include one or more embodiments of theinvention described herein. These include (a) selling software for useon an existing hardware platforms to enable the invention, (b) the saleof hardware (including jewelry or other form factors) to enable theinvention, and (c) charging users on an annual, monthly or per-messagebasis for use of the service/invention. These business methods alsoinclude the ability to charge users for the exchange of messages orinformation processed through one or many central servers based on IDsexchanged between mobile devices as described above.

Users of the device and service (i.e. senders or recipients, or both),may include individuals, businesses, not-for-profit organizations,advertisers, political action groups, or any other organization.

The preferred embodiment of the present invention would also include(e.g., as part of the server) a web-based user interface forregistration and profile management. Information provided by usersthrough this interface would include, but not be limited to theBluetooth ID of their mobile device, their name, address, billinginformation (if applicable), username, profile information, photo,preferences and names of friends. The user interface could also functionas a messaging center in which the user can keep track of messages sentor received as well as the profiles that they have viewed. Embodimentsof the present invention include hardware or software allowing a mobiledevice to incorporate some or all of this functionality.

Additional embodiments will be evident from the following detaileddescription and accompanying drawings, which provide a betterunderstanding of the nature and advantages of the present invention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an existing communication and messaging system.

FIG. 2 illustrates process used in an existing communication andmessaging system.

FIG. 3A illustrates a system according to one embodiment of the presentinvention.

FIG. 3B illustrates a local wireless protocol according to oneembodiment of the present invention.

FIGS. 3C-D illustrate some of the profile information that may beassociated with a wireless device ID according to one embodiment of thepresent invention.

FIG. 4 illustrates a method according to one embodiment of the presentinvention.

FIG. 5 further illustrates a method according to one embodiment of thepresent invention.

FIG. 6 illustrates a method according to yet another embodiment of thepresent invention.

FIGS. 7A-B illustrate filtering based on profile information accordingto one embodiment of the present invention.

FIG. 8 is an example of a system according to another embodiment of thepresent invention.

FIG. 9 is an example of extended range operation according to anotherembodiment of the present invention.

FIG. 10 illustrates a positional database used to extend the range ofcommunication according to one embodiment of the present invention.

FIG. 11 is an example of a wireless device interface according toanother embodiment of the present invention.

FIG. 12 is an example of an application interface according to anotherembodiment of the present invention.

FIG. 13 is an example of a wireless device according to anotherembodiment of the present invention.

FIGS. 14A-B are an examples of wireless identification tags according toanother embodiment of the present invention.

FIG. 15 is an example of a system according to another embodiment of thepresent invention.

DETAILED DESCRIPTION

Described herein are techniques for improving wireless communicationbetween users of wireless devices. In the following description, forpurposes of explanation, numerous examples and specific details are setforth in order to provide a thorough understanding of different aspectsof the present invention. It will be evident, however, to one skilled inthe art that the present invention as defined by the claims may includesome or all of the features or embodiments in these examples alone or incombination with other features or embodiments described below, and mayfurther include obvious modifications and equivalents of the featuresand concepts described herein.

Embodiments of the present invention use wireless protocols and networksfor implementing novel methods and algorithms that enhance the wirelesscommunication experience. Wireless protocols may be used gatheridentification information about other wireless devices active in acertain vicinity. A wireless device may then use such information tolearn more about the users of the other devices. Among other features,embodiments of the present invention may allow a user to 1) view theprofile (e.g., an anonymous summary of a person's background, likes,dislikes and other information) of any other user in their immediatevicinity; 2) identify mutual friends, colleagues or associates who theymay have in common with this other user; and 3) send a text, audio,video or other message (including their own profile) to this userwithout necessarily having any prior knowledge of the recipient'sidentifying information such as their name, phone numbers, emailaddresses or IM user names and where the identifying information of therecipient remains hidden from the sender and is known only to theservice itself. The present invention therefore provides users with theability to select and learn about people they wish to contact basedfirst on the observation of their real-world behavior without requiringthem to browse through boring, contrived or misleading classifiedadvertisements or on-line profiles.

FIG. 3A illustrates a system 300 according to one embodiment of thepresent invention. System 300 may include wireless devices 310 and 320that communicate with each other using a local wireless protocol 330.Wireless devices 310 and 320 each include local software applications311 and 321, respectively, and wireless device identifications 313 and323, respectively. Communication between wireless devices may beinitiated by a first user of one of the wireless devices (e.g., User Aof device 310, “Device A”) interested in obtaining information aboutanother user. User A may be referred to herein as the initiator orinitiating user of the communication, and Device A may be referred toherein as the initiating device. An initiating user is the user whowants to gather information (e.g., such as profile information) aboutanother user and/or send a message to another user. The system furtherincludes another user of one of the wireless devices (e.g., User B ofdevice 320, “Device B”), which may be a device compatible with wirelessdevice 310. User B may be referred to herein as a targeted user, andDevice B may be referred to herein as the target device. There can be aplurality of wireless devices 380A-380N that communicate using localwireless protocol 330.

Embodiments of the present invention allow users of wireless devices tointeract using a local wireless protocol when the wireless devices arewithin range of each other. Such devices may be coupled together over anad hoc or peer-to-peer wireless network, for example. In one embodiment,a local wireless protocol may have a limited range, R, with respect towireless device 310 so that only wireless devices within such range aredetectable. FIG. 3B illustrates a local wireless protocol 301 accordingto one embodiment of the present invention. A first wireless device 310may wirelessly communicate with wireless devices 390A-N that are withinrange of device 310. However, other devices outside the range of device310 will not be detectable. It should be noted that communication usingprotocol 301 is dynamic because as users of the wireless devices move,new devices may be detected as they come within range and other devicesmay become undetectable as they move out of range. For example, if thedistance between device 310 and device 390N increases (e.g., if eitheror both users move), device 390N will not be detectable by device 310. Avariety of wireless technologies may be used for protocol 301 having avariety of different ranges. For example, wireless technologies that maybe used as a local wireless protocol include Bluetooth, an 802.11protocol, Zigbee or equivalent wireless technology for establishing apeer-to-peer or ad hoc network or detecting the presence of otherwireless devices and exchanging device IDs. Communication between thedevices may also include using another mechanism including but notlimited to a directional electromagnetic beam or ultrasonic beam sentfrom Device A in the direction of Device B. The same or differentwireless technology may be used for a reply made by Device B to DeviceA. Embodiments of the presented invention are not limited to anyspecific currently existing or future wireless technologies. However,protocols such as Bluetooth, 802.11 or Zigbee are particularlywell-suited for applications where the other wireless devices areoperating in close physical proximity of each other. Moreover, thoseskilled in the art will understand that the range R of any device is notexact, but rather, signal strengths decrease as the distance betweenwireless devices increases making connectivity more difficult.

Referring again to FIG. 3A, the process may be initiated when aninitiating user (e.g., User A) is interested in obtaining informationabout another user. For example, as mentioned above, User A may be inthe same physical location as User B, and User A may want to meet User Bbut the conditions are not conducive with a direct communication.Embodiments of the present invention allow a user (e.g., User A) to viewinformation about, and/or send a message to, another user (e.g., User B)if the other user is operating a wireless device in the same area. Inone embodiment, an initiating wireless device 310 (i.e., Device A) sendsan identification request (i.e., a query or scan) to other wirelessdevices within range. A plurality of other wireless devices 320 (i.e.,Device B) and 380A-380N may receive the request. One or more of thewireless devices 320 and 380A-380N may have wireless deviceidentifications (“device IDs”) stored internally (e.g., ID 323 in DeviceB). When an identification request is received, one or more of thesedevices may access and transmit a device ID back to initiating device310 in a reply.

When a reply to the identification request is received in initiatingdevice 310, the initiating device may transmit the device IDs to aremote computer system 360 through wireless network 340 (e.g., awireless phone network) and the Internet 350, for example. Computersystem 360 may be an Internet server computer and may include multiplecomputers coupled to the Internet for processing information asdescribed herein, for example, and may further include a web application361. Computer system 360 may provide access to further information aboutUser B or other users associated with the device IDs received from theinitiating device. Furthermore, computer system 360 may act as a centralstorage location for all user information as well as a clearinghouse anddelivery system for messages sent between users.

For example, the device IDs may be received by the remote computersystem and used by a web application 361 and a database 370 to accessinformation associated with each device ID, such as Device B (i.e., UserB). In one embodiment, when computer system 360 receives a device ID,web application 361 may generate a database query using the device IDsreceived from wireless device 310. Database 370 retrieves informationassociated with each device ID in the query, and then formats theinformation to send to the initiating device 310. In one embodiment,device IDs may be included as fields (e.g., indexes) in database tablesthat are associated with other information in the database, for example.The association may be implemented using a variety of techniques such asassociated fields in a relational database or as links or referencesbetween objects, for example. The information in database 370 may havebeen set up previously by a user accessing a web address for computersystem 360 (e.g., using the web application 361) or a related website orusing a related web application such as an Internet browser. Database370 may be a single database, distributed database or other data storagesystems that can use device IDs to access information associated withdevice IDs. The associated information may be updated automatically ormanually by a user who accesses the information through computer system360 (e.g., over the Internet or wirelessly). After the associatedinformation has been retrieved, computer system 360 may then transmitthe information back to the initiating device for use by the initiatinguser.

Embodiments of the present invention are particularly advantageous in anon-line dating or social networking application where the information isprofile information. FIGS. 3C-D illustrate some of the profileinformation that may be associated with a wireless device ID accordingto one embodiment of the present invention. Profile information mayinclude a variety of information about a user's likes and dislikes,background, education, friends and other information such as text,audio, video, images (i.e., electronic pictures of the user), Blogs,links to favorite websites or items or services for sale. In oneembodiment, users may specify a list of friends. The web application onthe remote computer may then construct lists of mutual acquaintances(e.g., mutual friends or other people that are known by both users) of agiven pair of users (e.g., an initiator and target) by accessing andcomparing profiles of two users. The list of mutual acquaintances maythen be sent to the initiating wireless device. Mutual acquaintances maybe accessed via various degrees of separations. In other embodiments,this feature is enabled by individual users uploading names and/or otheridentifying information, such as email addresses, to the web applicationupon registration with the service, or at any other time. The webapplication then constructs the list of mutual friends for all pairingswith the available information. Corresponding mutual friend informationmay be passed on to the wireless devices as part of the profileinformation. In one embodiment, the system may also provide a user withinformation regarding “friends of friends,” essentially acting as amobile “social-networking” service in addition to, or in lieu of, adating service.

In a dating application, remote computer 360 may use device IDs toaccess profile information (e.g., for registered users of a service)stored in database 370. The system may match the device IDs with profileinformation in database 370. In cases where a match is found, remotecomputer 360 may transmit profile information back to the initiatingdevice. Once the initiating device has received images of the usersassociated with the device IDs from the remote computer, the images maybe displayed to the user of the initiating device (i.e., User A). User Acan then scroll through the images to uniquely select the person withwhom they are attempting to communicate or whose profile they wish toview. Upon selection of this person, the initiating device may accessand display the associated profile of User B on Device A. At that point,User A can then communicate with User B in various ways. For example,User B may (a) review the profile of User B, including the names ofmutual friends (who may or may not be users of the service), if any, (b)select any of several pre-recorded audio, video, text, or other messagesto send to User B, (c) forward his own user profile to User B, or (d)customize and send a message in real-time, or at any time after theinitial inquiry, to User B. Accordingly, embodiments of the presentinvention also include executing software algorithms that control theretrieval of profile information and flow of information between users.Such algorithms may be executed in database 370 or using applications311 and/or 361. For example, local software application may be used togenerate the identification requests for communicating with the remotecomputer as described herein. Algorithms on the remote computer mayinclude filtering algorithms, messaging algorithms, searching algorithmsor other algorithms as described in more detail below.

As mentioned above, computer system 360 may send some or all of theprofile information associated with each device ID back to theinitiating wireless device (e.g., Device A), and the profile information(e.g., an image or picture of the target user) may be displayed to theuser of the initiating wireless device. Profile information for one ormore targets may be stored internally on a wireless device orselectively deleted. Some or all of the profile information may be saved(e.g., as a complete profile or as a summary profile). Such profileinformation may be useful if the initiating user desires to contact suchtarget at a later time. The user of the initiating device may review theprofiles and may subsequently interact with other selected usersdepending on interest by sending message information to selected users.For example, sending message information may include sending anotheruser an anonymous message, sending a saved message (e.g., selecting fromavailable pre-constructed message), creating and sending a new messageor sending the initiating user's profile information. Variouscombinations of such message information may also be selected. Examplemessages may include text alone or in combination with otherinformation, including different multimedia messages such as audio,image or video. For example, message information may include pure ASCIItext with audio, image or video attachments. Audio formats may includefiles in “.wav” or “.mp3” formats, video formats may include files in“mpeg” format and image formats may include “GIF” or “JPEG”, forexample.

In some embodiments, message information may be stored on the wirelessdevices (e.g., Device A). In other embodiments, message information isstored on a remote system, such as computer system 360. Furthermore,messages may be sent directly between wireless devices (e.g., fromDevice A to Device B), or alternatively, messages may be sent from awireless device (e.g., initiating Device A) to computer system 360(e.g., to web application 361 and stored in database 370). When messageinformation is on the remote system, a targeted user (e.g., User B) canopt to logon to the web application 361 at any time and retrievemessages that are received from other users in the network. Suchmessages may also be automatically forwarded to the selected user'swireless device or any other target location. In some embodiments, webapplication 361 includes an interface for managing received messages andsent messages. Furthermore, users may save accessed profiles for laterreview. An initiating user may access computer system 360 at any latertime and review the saved profiles and construct messages to profiles ofinterest. Messages may then be forwarded to the users corresponding tothe saved profiles at a later time.

FIG. 4 illustrates a communication method according to one embodiment ofthe present invention. Some or all of the elements of the followingmethod may be implemented in software or hardware or as a combination ofsoftware and hardware on wireless devices. At 401, a user of aninitiating wireless device (e.g., Device A of FIG. 3) initiates a scanfor other wireless devices (e.g., using an “initiate scan” menu item orbutton on a wireless device). In one embodiment, a user may initiate ascan when in visual contact with another user, for example. At 402, theinitiating device (e.g., “Device A” in FIG. 4) transmits anidentification request using a local wireless protocol. At 403, theidentification request is received by other wireless devices (i.e.,target devices) using the wireless protocol. At 404, one or more of thetarget wireless devices (e.g., Device B) access their respectivewireless device IDs. At 405, each target wireless device transmits thedevice ID to the initiating device using the local wireless protocol. At406, the initiating device receives the wireless device IDs from theother wireless devices and transmits the device IDs to a remote computerover a wireless network. At 407, the remote computer (e.g., a server)receives the wireless device IDs. At 408, the remote computer accessesprofile information associated with each wireless device ID. At 409, theremote computer transmits the profile information associated with eachdevice ID to the initiating device.

FIG. 5 further illustrates a method according to one embodiment of thepresent invention. At 501, profile information is received from a remotecomputer in the initiating device. At 502, profile information isdisplayed to a user of the initiating device. For example, theinitiating device may first receive images or pictures of target usersand display the images to the user of the initiating device. At 503, theuser of the initiating device reviews the profile information (e.g., theimages or pictures). At 504 the initiating device transmits information,such as a message or the initiating user's profile, directly to thetarget device using the local wireless protocol. Alternatively, at 505,the user of the initiating device enters correspondence instructions(e.g., a message) into the initiating device. At 506, the initiatingdevice transmits the correspondence instructions to the remote computer.

FIG. 6 illustrates a method according to yet another embodiment of thepresent invention. At 601, one or more wireless device identificationsand associated profile information are stored on a remote computer. At602, the remote computer receives the wireless device IDs. At 603,software on the remote computer (e.g., a web application) generates aquery using one or more of the wireless device IDs. At 604, some or allof the profile information associated with each device ID is received inresponse to the query. At 605, the remote computer system transmits theaccessed profile information to the initiating wireless device (e.g.,Device A).

FIGS. 7A-B illustrate filtering based on profile information accordingto one embodiment of the present invention. As mentioned above,embodiments of the present invention allow users to send messages andprofile information to other users. Some applications may use the deviceIDs of both the target and the initiating devices to perform filtering.For example, at 701 in FIG. 7A, a web application may receive device IDsof a target user and an initiating user from an initiating device. At702, a query using the device IDs is generated, and at 703 profileinformation and filter parameters associated with the device IDs areretrieved. At 704, the filter parameters are applied to the profileinformation. For example, the profile information of a target may becompared to the initiator's filter parameters, and the target's profileis filtered out (e.g., if the salary is less than $10,000 per year ordegree earned is not at least High School Diploma). Alternatively, theprofile information of an initiating user may be compared to thetarget's filter parameters, and the initiating user may be denied accessto the target's profile if the initiating user's profile informationdoes not satisfy the target user's filter parameters. At 705, the systembranches based on whether or not the filter parameters are satisfied. Ifthe profile information does not pass the filter, the target profilesare rejected at 706. However, if the profile information does pass thefilter, the target profiles may be sent to the initiating device at 707.

FIG. 7B illustrates another example of filtering based on profileinformation. Filtering may also be implemented such that access to atarget user's profile information is allowed, but messages to the targetare blocked if filter parameters are not satisfied. For example, afteran initiating user has obtained a picture of the target user and optedto send a message to the target user, the web application may receivecorrespondence instructions from the initiating device at 710. The webapplication may also receive the device ID for the initiating device,either earlier in the process or together with the correspondenceinstructions. The web application may use the initiating device's ID toretrieve the initiating user's profile at 711. At 712, the system mayapply filter parameters set up by the target user to the initiatinguser's profile information. The web application may determine whether ornot the initiator's message is automatically rejected or passed at 713.Thus, a target user may automatically screen out communications fromundesirable initiating users. An initiating user's message may berejected and the initiator may be automatically notified of therejection at 714, in which case no correspondence is sent. If theinitiator passes, then the system may complete the correspondenceinstructions at 715, which may include sending a message directly to thetarget's wireless device or making a message available on the system forlater retrieval. At 716 the target receives the correspondence. At 717the initiating user may automatically be notified that thecorrespondence instructions have been completed or that thecorrespondence has been received. A target may choose to respond at 718.If the target chooses not to respond, then the correspondence may bediscarded (e.g., deleted from the system) at 719. Alternatively, thetarget may opt to send correspondence to the user of the initiatingdevice at 720, and thereby further interact with the initiatorimmediately or at any later time. Filtering as described above may bedone at the granularity of the information type (i.e., informationelement-by-information element). In other embodiments, filteringcapacity is done in an all-or-none manner.

Other Example Applications

In addition to dating applications, embodiments of the present inventionmay be used in a variety of other applications. In one embodiment of thepresent invention, Device A may be a business or advertiser thatautomatically queries other devices for their IDs, receives one or manyresponses to its request and communicates this information to the remotecomputer. The remote computer then compares the profiles associated withthe IDs to the pre-defined preferences of User A. If any of the profilesmatch these preferences, an alert is sent to User A to indicate thepresence of a person-of-interest. For example, a business or otherorganization (such as an advertiser) may take some additional actionbased on the presence of a person with a specific profile. An advertisermay retrieve profiles and forward advertisements to such user'saccounts. User's of the service may opt to receive advertisements orfilter advertisements based on predefined criteria (i.e., restaurant adsonly).

Another example application of the present invention may includeentertainment or other gaming applications operating on mobile devices.One player may decide to initiate or play a game with another based onthe other user's profile. For example, the system may automaticallyenable a gaming application when other devices are detected within theirvicinity, and the information associated with the local devices mayindicate that the users of such devices are players of a particulargame, have specific skill levels or may present some other challenge.The system may automatically notify the user of that person's presenceso that a gaming scenario can begin.

An additional embodiment of the present invention includes the use ofthe service and/or hardware for the electronic commerce applicationsincluding micropayments. Micropayments are prepaid accounts that may beused for low dollar amount purchases. Additional embodiments of thepresent invention also include medical applications where a user profilemay contain medical or other information that may be accessed by adoctor, pharmacist, emergency services technician or other healthprovider. Yet another embodiment of the present invention includessoftware, which can be downloaded into an existing platform to enable itto practice the present invention and perform in the techniquesdescribed herein.

Embodiments of the present invention may also include business methodsfor generating revenue and income through the sales of hardware,software and services using the techniques described herein. Theseinclude (a) selling software for use on existing hardware platforms toenable the invention, (b) the sale of hardware (including jewelry orother form factors described below) to enable the invention, and (c)charging users on an annual, monthly or per-message basis for use of theservices described herein. These business methods also include theability to charge users for the exchange of messages or informationprocessed through one or many central servers based on IDs exchangedbetween mobile devices as described above. It is to be understood that avariety of users (i.e. senders or recipients, or both) may benefit fromvarious applications of the present invention. Users of the devices andservices may include individuals, businesses, not-for-profitorganizations, advertisers, political action groups, or any otherorganization.

Portable Profile

In some embodiments, wireless devices 310 and 320 may include initialprofile information 312 and 322 stored locally on the wireless devices.Initial profile information 312 and 322 may be pictures and/or profilesummaries (i.e., “thumbnails”) that require less memory than a fullprofile so that profiles may become “portable.” Initial profileinformation may contain short textual statements and a picture. Initialprofile information may also be customizable by a user so that each usercan create their own “portable resume” in accordance with their owntastes and interests. Thus, in addition to providing their device IDs,the queried devices may also provide various forms of initial profileinformation, such as a picture of User B or text, so that User A canselect other users to communication with from the available users on thelocal network. For example, in one embodiment, initial profileinformation such as an image or text is received with the device IDsdirectly from the other wireless devices. Device A may then display theinitial profile information (e.g., a picture) to User A using a displayor other interface. User A may then select specific target devices forfurther and subsequent queries. Thus, rather than automaticallyretrieving profile information for all device IDs within range,computing resources may be saved by narrowing the list to profiles ofinterest to be retrieved from the remote computer system.

Example Implementation Using Bluetooth

FIG. 8 is an example of a system according to another embodiment of thepresent invention. System 800 includes cellular phones 810 and 820 andother wireless devices such as PDA 880A and wireless ID tag 880N allcapable of communicating using a Bluetooth Protocol 830. When User Ainitiates an identification request 801, other wireless devices sendreplies 802 that include wireless device IDs 823 and optional initialprofile information 822 if profile information is stored on the devices.In this example, a request (i.e., a query) 801 and reply 802 are madeusing Bluetooth.

In one embodiment, the wireless device IDs 813 and 823 are uniqueidentifications. If a unique ID is stored in the wireless device, alocal application may be included for retrieving the unique ID. Oneexample unique ID is shown in system 800, wherein the uniqueidentifications are Bluetooth IDs (e.g., IDs 813 and 823). In otherembodiments, the unique ID may be an RFID or another equivalentidentification for uniquely identifying the wireless device. Anotherexample of a unique identification is a unique identification numberassigned to a communication device by the device manufacturer. A devicemanufacturer, in coordination with the other device manufacturers, mayhave policies for assigning such unique IDs such that each communicationdevice is provided with a unique ID in the manufacturing process. Insome applications, unique IDs, once assigned, are often never changed orreused. A unique ID can then be used to uniquely identify a given devicewith a common communication network shared by all communication devices.

Upon receiving reply 802, Device A sends a request 803 to webapplication 861 on server 860. Device A may communicate with webapplication 861 in various ways. In one embodiment, Device A contactsweb application 861 using standard web technologies such as HTTPprotocol over a cellular network. In yet other embodiments, Device A maybe Internet-ready, using Bluetooth, or different Wi-Fi technologies(e.g., 802.11) to contact web application 861 using web technologiessuch as HTTP protocol over the Internet. In other embodiments, Device Amay contact web application 861 through an intermediate Internet-readyrelaying computer (e.g., a USB cable, cradle or other physicalconnection). Device A may attach devices IDs received in replies 802,and may further attach its own device ID and either the content of amessage or a link to a pre-constructed message for use by the webapplication 861 and database 870.

In one specific embodiment, a query request 805 is generated to database870 when web application 861 receives request 803. Query request 805includes one or more wireless device IDs received in request 803.Request 805 may also contain information about what particularinformation should be contained in reply 806. For example, a request 805may include the device ID of Device A, the device ID of Device B and amessage or link to a message or other information. Request 805 is thensent to database 870 for retrieval of information and processing ofinformation.

In response to request 805, database 870 generates a reply 806, whichtypically will include profile information associated with the deviceIDs supplied in request 805. The profile information returned in reply806 depends in part on how User B has configured his/her profileinformation. For example, User B may store some information that isdesignated non-public (i.e., information that may not be disclosed inresponse to a request 805), and may store other information that may bedesignated public (i.e., information may be disclosed in response to arequest 805). Database 870 may differentiate public information fromnon-public information. Thus, non-public information may be filtered outwhen generating reply 806. For example, the true identity of User B maybe stored in the database 870 and designated non-public (e.g., when theuser signs up for the service). Therefore, a particular request 805 mayonly return public profile information while filtering out anyinformation pertaining to a user's true identity.

Upon the reception of reply 806, the web application 861 formats UserB's profile information and constructs reply 804, which is sent back toDevice A through cellular network 840. In some embodiments, reply 804 isformatted according to industrial standard data sharing language such asXML. However, reply 804 may be constructed using a proprietary format ortemplate. In some embodiments, each of the request 801, reply 802,request 803, request 805, reply 806 and reply 804 are transferred in anencrypted format. In such case, the senders of these requests andreplies may include additional software code that encrypts thetransmitted data, and the recipients of these requests and replies comewith software code for decrypting the received data. In someembodiments, different kinds of encryption and decryption technologiesare used in the said requests and replies. In such cases, the sender andrecipient of a given request or reply may communication in the sameprotocol, encryption and decryption language.

Upon the reception of reply 804, Device A processes reply 804 bydecoding the information content and formatting the received informationcontent for display to User A. In some embodiments, a summary of thereceived information is constructed while processing reply 804. Suchsummary information may be a picture of the targeted user or a shortsummary description of each targeted user (e.g., 820 and 880A-N). Thepicture or other information may then be displayed to User A through agraphical user interface on a display, and the user may select a targetuser based on the picture before other information is presented. In oneembodiment, a first reply 804 includes only pictures and optionally ashort summary of the target user's profile. Additional profileinformation may be retrieved from the server only if the initiating userselects a particular target user based on the picture and initialinformation.

In some embodiments, multiple requests and replies corresponding todifferent targeted users may be concurrently processed by server 860.For example, while web application 861 is in the process of obtaininginformation for a particular user (e.g., the user of Device 880A) andwaiting for database 870 to deliver a reply 806, Device A can initiateanother request 803′ to the web application 861 for another user (e.g.,the user of Device 880N). In some embodiments, multiple requests andreplies of the same type are packaged together in a single request orreply for performance optimization or bandwidth optimization purposes.In yet other embodiments, Device A waits for a configurable amount oftime (e.g., 5 seconds) before it processes all the replies 804.

Messaging

As mentioned above, embodiments of the present invention may includeparameters and algorithms used to control message delivery. Asillustrated above with reference to FIG. 7A-B, message delivery may beconfigured to be contingent on a number of pre-set conditions includingbut not limited to whether User B has configured the system to allowreception of messages from someone with profile information of User A.Additionally, users may configure the system to control the form of themessage received, the number of messages received in given timeinterval, the maximum number of messages or other filtering preferencesfor filtering out unwanted, repetitive, overwhelming or otherwiseundesirable messages (e.g., spam). Additionally, a targeted user canspecify a location, method or format for receiving a message. Forexample, users may specify that messages are to be sent to email, to acellular phone message system or to any other designated target.Similarly, a user may specify that messages are to be received an emailmessage, a text message, an instant message or as voicemail, forexample, with or without multi-media attachments. Additionally, deliverylocations or formats may be contingent upon the types of message or onthe source of the message. For example, User B can specify to receive animmediate text-messaging alert when a particular user (e.g., User A) hassent User B a message. For another example, User B can specify thatmessages matching a certain specified criteria are to be received in aparticular email inbox location. User B may specify that messagesmatching other specified criteria are to be received in anotherlocation, such as another email box.

Users may also access messages in a variety of ways. For instance, webapplication 861 may include a message management interface, and usersmay receive messages by logging on to web application 861 and accessingthe message management interface. In another embodiment, accessingmessages may involve receiving and displaying the messages on the user'swireless device. Message delivery may further include notificationtechniques. For example, User A may receive a notification after amessage is delivered to User B or when the message is read by User B(e.g., by an email notification or by examining the properties of thesent message).

When a target user has received a message from an initiating user, thetarget user may also respond to the received message through webapplication 861 or respond to the received message directly over thewireless network from Device B to Device A. In other embodiments, User Ais given choice of staying anonymous throughout the process. Forsubsequent messaging after the initial message, User B is also given achoice of staying anonymous in subsequent interactions.

Device A may further contact web application 861 to log when a messageis sent or received. A send and/or receive log may be stored in database870, for example. Such send and receive messaging logs can be accessedby users at a later time by accessing web application 861. Furthermore,web application 861 may automatically log some or all of the previouslytargeted wireless devices for the user of the initiating device and logthe profiles viewed by User A.

Broadcast Mode

In another embodiment of the present invention, an initiating wirelessdevice (e.g., Device A) automatically transmits identification requestqueries to targeted devices 820 and 880A-N (i.e., operates in abroadcast mode). In some embodiments, such queries are transmitted in abroadcasting manner to other devices operating in physical proximity.Due to power limitations of wireless devices, this may be done in aperiodic manner, and users may specify the frequency of transmitting orbroadcasting these requests. A target wireless device operating inphysical proximity will receive the request for its device ID. If thetarget wireless device is out of range, the target device may continueto operate in a listening mode. If a request is received, then thetarget device broadcasts or sends its device ID to the initiatingdevice. In one embodiment, the initiating device may periodically checkif a reply has been received. If not, it continues to automaticallytransmit an identification request, and is ready to receive a reply. Insome embodiments, the user of an initiating device can specify thenumber of retries to be done, or a duration of time such probing isdone, and if the number of retries or the specified duration of time haselapsed without receiving any reply, the operation may be terminated. Itis to be understood that embodiments of the present invention mayinclude initiating devices that operate in a listening mode, wherebytarget devices periodically transmit their device IDs and the initiatingdevices receives the devices IDs for further processing as describedabove.

Thus, the initiating device may periodically receive one or moreresponses to its automatically generated identification request, andsubsequently communicate the target device IDs to web application 861.In some embodiments, such communication includes the device ID of theinitiating device to web application 861. Web application 861 thenretrieves information and configuration parameters, and filters theobtained information according to the preferences of the initiatingdevice and target device, and returns the filtered information back tothe initiating device for display. Some or all of these steps may alsooccur automatically so that the user of a device may be presented withan automated prompt indicating the a communication has occurred withanother user in the vicinity.

Extended Range Operation

FIG. 9 is an example of extended range operation according to anotherembodiment of the present invention. As shown in FIG. 9, the effectiverange of a communication may be extended beyond the effective range of agiven local wireless protocol. In FIG. 9, wireless devices 910, 920 and930 each show the location of a wireless device. Each circle representsthe effective range of the local wireless protocol, such as Bluetooth,used by each of the devices for detecting other devices. For devices todetect or communicate with each other, each device must be within therange of the other device. For example, device 910 and device 920 arecapable of communicating with each other, and device 920 may communicatewith device 930. However, device 910 may not detect or communicate withdevice 930 because both devices are out of range. In one embodiment, atarget device, in response to a device ID request from an initiatingdevice, returns its own device ID together with the device IDs of allwireless devices within the target's range. For example, in oneembodiment a target may receive a wireless ID request from an initiatingdevice and automatically issues its own wireless ID request. In responseto the wireless ID request of the target, other wireless devices withinthe targets range may send the target their device IDs. The target maysubsequently return both its own device ID to the initiating device andthe device IDs returned to the target by the target's subsequentwireless ID request. Thus, the initiating device will detect not onlythe target device ID, but also other device IDs for wireless deviceswithin the target's range. Such wireless devices may be outside therange of the initiating device. Communicating with devices outside therange of the initiating device extends the effective range of thedevice. In FIG. 9, the effective range of device 910 is increased by adistance “d1” using information from device 920. The range may befurther increased by a distance “d2” using information from device 930.Each extension may be referred to as a “hop” across devices using alocal wireless protocol. The maximum number of hops may be configured bya user to limit the effective range. For example, messages to otherusers may be discarded if they are forwarded more than a configurednumber of hops.

FIG. 10 illustrates a positional database used to extend the range ofcommunication according to another embodiment of the present invention.In this embodiment, the presence of neighboring devices are establishedvia a local wireless protocol, their IDs uploaded to a central servervia a cellular or other network and such information is used to create apositional database. For example, from the diagram in FIG. 10 it can beseen that device A is within range of devices B and E. Thus, if device Aissues an identification request, it will receive device IDs fromdevices B and E. This positional information may be captured inpositional database 1000, which may include a field (e.g., a column)designating the “Device” and another field designating “Devices inRange” of the associated “Device.”Since devices B and E are within rangeof device A, devices B and E are entered in the second field ofpositional database 1000 in the row associated to device A. Similarly,devices A and C are entered in the second field of positional database1000 in the row associated with device B. Likewise, devices B and D areassociated with device C, device C is associated with device D anddevice A is associated with device E. Therefore, when device A initiatesan identification request, devices B and E return their device IDs,which are subsequently sent to the remote computer. The remote computercan use the device IDs for devices B and E to return information forthese devices. However, using the positional database 1000, the remotecomputer can further determine that device C is in range of device B. Ifthe system is programmed to return all users active within one hop, thesystem may automatically use device C's ID and return informationassociated with device C's ID to device A. The remote computer canfurther determine that device D is in range of device C. If the systemis programmed to return all users active within two hops, the system mayautomatically use device C's ID and device D's ID and return informationassociated with both device IDs to device A. Positional database 1000may be updated by periodic identification requests. Therefore, uponrequest of Device A, the remote computer will supplement directresponses (in this case, from device B and device E) with indirectresponses (in this case, “C” and “D”) that User A can select from. Bycorrelating this location information, the system can create what iseffectively an expanded or “daisy-chained” network, dramaticallyincreasing the utility and range of the system. In one embodiment,individual users or the system itself can set limitations such thatusers removed from direct contact beyond a certain number of hops (e.g.more than twice removed) are not included in any query.

Example Interfaces

FIG. 11 is an example of a wireless device interface according toanother embodiment of the present invention. The steps in FIG. 11 may beexecuted on a wireless device by a local application, which may displaysome or all of the steps in FIG. 11 to a user on a display, for example.At 1101, the application program is activated. At 1102, a user may scanfor profiles in the vicinity (e.g., by transmitting a identificationrequest), search for saved profiles or obtain system information. If theuser opts to scan for profiles, the number of devices that respond(e.g., [X] Bluetooth devices) may be obtained at 1103. A user may searchavailable profiles, which may be pictures, initial profiles (i.e.,summary or “portable profiles”) or complete profiles retrieved from abackend system such as an Internet server. If no devices are in range,then the system may display “no profiles found” at 1104. The system maydisplay a list of profiles (e.g., a picture and short text segment orheading) on the wireless device for the user to review and select at1105. If a user is interested in a listed profile, the user may selectthe profile to view the complete profile. Complete profiles aredisplayed to a user at 1108A-C. The system may display a list ofpreviously saved profiles at 1107, from which a user may select thecomplete profile and obtain profiles 1108A-C. Profiles 1108A-B mayinclude information as shown in FIGS. 3C-D above and may include linksto a user's “Blogs” (i.e., weblog) as well as any items or services forsale. At 1109, a user may respond to a profile of interest by sendinghis/her own profile, a saved message or a custom message (e.g., a customvoice or text message). At 1110, the system sends the profile or messageand displays the action to the user. At 1111, the system may prompt theuser for the number of a message to send (i.e., if saved messages haveassociated numbers). The system may also allow a user to select amessage and send the message with the user's profile. At 1112, a usermay record a voice message. A user interface may include menu items forRecording, Stopping, Playback and Sending the recorded message. At 1113,the user may confirm that the message is complete and ready to send withor without the user's profile.

Embodiments of the present invention may also include software thatallows a user of a wireless device to directly access the wirelessdevice identification through a menu. For example, software menu item1106 may allow a user to display a unique identification (e.g., aBluetooth ID) on the screen of the display. A local application may loadthe device ID from an internal memory location or register into asoftware variable, and subsequently display the device ID to the user.Once the device ID has been loaded from memory into software, the deviceID may be transformed into a variety of different formats (e.g., HEX,Text, ASCII, etc.).

FIG. 12 is an example of an application interface according to anotherembodiment of the present invention. The steps in FIG. 12 may beexecuted on a computer system such as a server by a web application,which may display some or all of the steps in FIG. 12 to a user on adisplay, for example. At 1200, a user may access the home page over theInternet. The home page may allow a user to login, sign up as a new useror gather information about the system (e.g., “What is VicinityMessaging”). Information about the system may be displayed to a user at1201. At 1202, the user may access the service either as an existinguser or new user. If the user is a new user, then he/she registers byentering his/her payment information (if applicable) such as credit cardinformation. Payment authorization for the service occurs at 1203. At1204, a new user may enter user profile information, configurationparameters (e.g., preferences) and other relevant information (e.g.,device ID or other Mobile ID) and may even upload information (e.g.,pictures) from a desktop computer, wireless device or any other source.The profile information, configuration parameters, associated device IDsand other information may be stored in a database, for example. User'smay also enter information about friends, items for sale, Blogs andlinks to other information on the Internet. Embodiments of the presentinvention may include a message manager as shown at 1205. Messagemanager may include an “Outbox,” “Inbox,” and “Compose” features. Asmentioned previously, messages may be sent anonymously or with realpersonal information about the user (e.g., the user's real name and/orphone number).

Example Wireless Devices and Wireless ID Tags

FIG. 13 is an example of a wireless device according an embodiment ofthe present invention. Wireless device 1300 may act as both aninitiating and target device. Wireless device 1300 includes an antenna1301 for receiving and transmitting wireless signals, such as RFsignals. Antenna 1301 is coupled to RF circuitry 1302. RF circuitry 1302receives, transmits and processes the RF signals and may code and decodeinformation, such as device identification requests and replies andother wireless communications describe herein as they are beingtransmitted and received. RF circuitry 1302 may include analog anddigital circuits for implementing multiple wireless technologies such asa local wireless protocol (e.g., Bluetooth, 802.11 or Zigbee) and awireless phone technology (e.g., an analog or digital cellulartechnology, CDMA, PCS or GSM). RF circuitry may also include thewireless device ID 1311. Information is processed and controlled byprocessor 1303. Processor 1303 may be coupled to memory 1304 and userinterface 1305. Processor 1303 may execute instructions for controllingthe flow and processing of information between RF circuitry, 1302,memory 1304 and user interface 1305. Memory 1304 may include one or morevolatile and/or non-volatile memories, registers, and other electricalcomponents for storing information, which are represented here as asingle component for illustrative purposes. Memory 1304 may store localapplication 1312 and, optionally, profile information 1313. Processor1303 may access and execute local application 1312 during “run-time” toexecute the wireless device portions of the methods and processesdescribed herein. Embodiments of wireless devices 1300 may includewireless phones, personal digital assistants (“PDA”), laptops, portablemusic players, portable game players, pagers, wireless email ormessaging systems, pocket PC or any other mobile wireless device.Exemplary embodiments may have form factors small enough to fit in thepalm of a person's hand (i.e., handheld devices) or be small enough tofit in a purse, pocket or small carrying case. It is to be understoodthat a variety of combinations of weights and dimensions could be used.

FIG. 14A is an example of a wireless identification tag (“ID tag”)device according to another embodiment of the present invention.Embodiments of the present invention may include a wireless ID tag 1400Athat may be used to carry a device ID 1405 so that other users mayreceive the device ID and gather information about the user of wirelessID tag 1400A. Thus, wireless ID tag 1400A is a target device only. Thepurpose of wireless ID tag 1400A is to provide a stored wireless deviceID to other device in the vicinity (e.g., in response to anidentification request), and it may not include all the componentsnecessary for being a full featured initiating wireless device asdescribed above. For example, an ID tag may be isolated from a user sothat the device cannot receive any information from, or provideinformation to, a user. Thus, an ID tag may not include any user inputsor outputs such as a display, a touch screen or buttons, and may notinclude a local application that controls profile information and otherfeatures described above. An ID tag also may not have stored profiles ofany kind. However, an ID tag does include a device ID, and may includethe portable profile of the user. In one embodiment, ID tag 1400A mayonly include an antenna 1401, isolated RF circuitry 1402 forestablishing wireless communication links described above, a device ID1406 and power supply 1403. The device ID may be transmittedautomatically on a periodic basis or in response to receiving anidentification request. Power supply 1403 may include an “on/off” switchand an input for recharging an internal battery. However, all the othercircuits other than the power supply are isolated from the user (i.e.,all circuitry other than the power supply is isolated from direct userinputs and outputs). Thus, the wireless ID tag only receives and sendsdevice IDs and other communication information through antenna 1401.Consequently, all inputs and outputs of the RF circuitry are receivedthrough antenna 1401.

FIG. 14B is another example of a wireless ID tag according to anotherembodiment of the present invention. Wireless ID tag 1400B may onlyinclude an antenna 1401, isolated RF circuitry 1402 for establishingwireless communication, a processor such as a microcontroller, a memory1405 for storing device ID 1406 and power supply 1403. Similar to ID tag1400A, the power supply 1403 in ID tag 1400B may include an “on/off”switch and an input for recharging an internal battery. However, allcircuitry other than the power supply is isolated from direct userinputs and outputs. Thus, like ID tag 1400A, ID tag 1400B only receivesand sends device IDs and other communication information through antenna1401. Consequently, all inputs and outputs of the RF circuitry arereceived through antenna 1401. The advantage of wireless ID tags 1400A-Bis that the reduced circuitry allows such devices to fit into a verysmall form factor that may allow integration of the device into jewelry,watches, and other wearable or otherwise mobile objects. For example,the wireless ID tag may be entirely embedded in a watch, a broach, apendant, a necklace, a ring, an earring, an article of clothing, aclothing label, a wallet or a key-chain such that all internal circuitsother than the power supply (i.e., on/off and recharge) are entirelyisolated from any direct inputs or outputs by a local user wearing theID tag. The ID tag may also be integrated into a credit-card form-factoror into clothing itself or as some other fashion statement which can beboth aesthetically pleasing and alert others that a person is part ofthe messaging network described above.

Embodiments of the present invention may include wireless devices withonly the discrete functionality of devices 1300 or 1400A-B.Alternatively, some or all of the features and functions describedherein may be integrated with other components with additional featuresand functions. Features and functions described herein may beimplemented through hardware implementations, as software applicationsor as combinations of software and hardware. In some embodiments, thedevices may have the functionality to act as both initiating and targetdevices, and the devices operate in a symmetrical manner. In otherembodiments, a device may be configured to operate as an initiatingdevice only or as a target device only. For example, if a wireless IDtag is used, the device ID discovery phase may work asymmetrically, witha device of type similar to device 1300 being an initiating device and adevice of type similar to device 1400A-B being a target device.

GPS

FIG. 15 is an example of a system according to another embodiment of thepresent invention. In this example, GPS information is used fordetermining target devices operating in physical proximity to aninitiating device. Wireless devices 1510 and 1520 may each include GPSunits 1514 and 1524, respectively. GPS units 1514 and 1524 may receivesignals from satellites 1530 to determine the position of the wirelessdevices. Local applications 1511 and 1521 may transmit the positioninformation and wireless device IDs 1513 and 1523, which may be a phonenumber or other unique identifier, over wireless network 1540 andInternet 1550 to computer system 1560. Such information may be sent asposition updates 1501 and 1502 either periodically or in response to acommand from a user. The position information and device IDs for aplurality of wireless devices 1510, 1520 and 1580A-N may then be storedand processed for facilitating communication between users.

For example, web application 1561 may receive the position informationand device IDs and store the information in database 1570. When User Adecides to access information about another user (e.g., User B), User Amay initiate a request on Device A to computer system 1560. The requestis received by web application 1561, and may asks for a list of wirelessdevices that are operating within a specified range of Device A. Webapplication 1561 determines Device A's GPS information. Web application1561 also generates a list of devices that are operating within aspecified range of Device A by processing the GPS information for DeviceA and the other devices. If there is no such device, web application1561 generates a reply to Device A indicating that there is no useroperating a device within the specified range. Otherwise, if at leastone device is found, web application 1561 transmits a notification 1503to Device A. Such reply may include profile information (e.g., pictures)about each device within range of Device A. For example, web application1561 may also sends summary profile information, such as visual cue(e.g., an image of the users of the detected devices). Device A may thendisplay pictures of other users on a display. User A determines from theinformation provided by Device A whether he/she would like to carry outfurther interaction with any of the listed users using any of theaforementioned methods and mechanisms described herein.

The above description illustrates various embodiments of the presentinvention along with examples of how aspects of the present inventionmay be implemented. The above examples and embodiments should not bedeemed to be the only embodiments, and are presented to illustrate theflexibility and advantages of the present invention as defined by thefollowing claims. Additionally, embodiments of the present invention maycover the operation of a wireless device, including software algorithmsperformed on a wireless device, or the operation of a computer system,including software algorithms performed on a server, database or othercomputer network configuration for implementing backend processing.Based on the above disclosure and the following claims, otherarrangements, embodiments, implementations and equivalents will beevident to those skilled in the art.

1. A method comprising: communicating, via a server, a request forposition information of a first device; receiving, at the server, theposition information and a device ID of the first device; storing theposition information and device ID in a database; receiving, at theserver, profile information associated with a user of the first devicein response to said request; storing the profile information in thedatabase, said storage associated with stored the position informationand device ID; receiving, at the server, a request from a second devicefor the position information, device ID of the first device and theprofile information associated with the user of the first device;determining, via the server, if the position information of the firstdevice is within a proximity of the second device; and if the firstdevice is within the proximity, transmitting a notification to thesecond device.
 2. The method of claim 1, further comprising: if thefirst device is not within the proximity, transmitting a message to thesecond device indicating that the first device is not within theproximity.
 3. The method of claim 1, further comprising: based on theprofile information, determining whether the user of the first deviceand the user of the second device have a relationship.
 4. The method ofclaim 3, further comprising: determining a degree of relationshipbetween the user of the first device and the user of the second device.5. The method of claim 4, further comprising: based on a degree ofrelationship, incorporating the position information and profileinformation of the user of the first device in a user profile of theuser of the second device.
 6. The method of claim 1, wherein theproximity is preset by the server.
 7. The method of claim 1, wherein theproximity is preset by the first device.
 8. The method of claim 1,wherein the proximity is preset by the second device.
 9. The method ofclaim 1, further comprising: in response to said request, receiving atthe server a second request from the first device for positioninformation of a third device, the request extending to other deviceswithin a proximity of the first device; receiving the positioninformation and device ID of the third device; and storing the positioninformation and device ID of the third device in the database.
 10. Themethod of claim 9, further comprising: if the first device is not withinthe proximity, correlating the position information for the third devicewith the position information of the first device to create an expandedrange of devices.
 11. The method of claim 10, further comprising:transmitting a second notification to the second device second deviceidentifying the third device based on the expanded range.
 12. The methodof claim 11, wherein the second notification identifies the first deviceas a node between the second device and the third device.
 13. A systemcomprising: a database comprising stored data; a server comprising aplurality of processors in communication with the data in the database,the server programmed to perform a plurality of operations, comprising:communicating a request for position information of a first device;receiving the position information and a device ID of the first device;storing the position information and device ID in the database;receiving profile information associated with a user of the first devicein response to said request; storing the profile information in thedatabase, said storage associated with stored the position informationand device ID; receiving a request from a second device for the positioninformation, device ID of the first device and the profile informationassociated with the user of the first device; determining if theposition information of the first device is within a proximity of thesecond device; and if the first device is within the proximity,transmitting a notification to the second device.
 14. The system ofclaim 13, wherein the server is programmed to perform further operationscomprising: if the first device is not within the proximity,transmitting a message to the second device indicating that the firstdevice is not within the proximity.
 15. The system of claim 13, whereinthe server is programmed to perform further operations comprising: basedon the profile information, determining whether the user of the firstdevice and the user of the second device have a relationship.
 16. Thesystem of claim 15, wherein the server is programmed to perform furtheroperations comprising: determining a degree of relationship between theuser of the first device and the user of the second device.
 17. Thesystem of claim 16, wherein the server is programmed to perform furtheroperations comprising: based on a degree of relationship, incorporatingthe position information and profile information of the user of thefirst device in a user profile of the user of the second device.
 18. Thesystem of claim 13, wherein the server is programmed to perform furtheroperations comprising: in response to said request, receiving at theserver a second request from the first device for position informationof a third device, the request extending to other devices within aproximity of the first device; receiving the position information anddevice ID of the third device; and storing the position information anddevice ID of the third device in the database.
 19. The system of claim18, wherein the server is programmed to perform further operationscomprising: if the first device is not within the proximity, correlatingthe position information for the third device with the positioninformation of the first device to create an expanded range of devices.20. The system of claim 19, wherein the server is programmed to performfurther operations comprising: transmitting a second notification to thesecond device second device identifying the third device based on theexpanded range.